/*
 * @Author: Yuluo 568055454@qq.com
 * @Date: 2023年06月23日 13:59:48
 * @LastEditors: Yuluo 568055454@qq.com
 * @LastEditTime: 2023年06月23日 14:14:46
 * @FilePath: \Mood-Blog-System\blog\src\utils\storage\sessionStorage.ts
 * @Description: 会话存储sessionStorage
 * Copyright (c) 2023 by Yuluo, All Rights Reserved. 
 */

/**
 * @description: 设置sessionStorage 
 * @param {string} key 键
 * @param {T} value 值
 * @param {*} prefix 前缀
 * @return {*} boolean
 */
export function setSessionItem<T>(key: string, value: T, prefix = ''): boolean {
    try {
        sessionStorage.setItem(prefix + key, JSON.stringify(value));
        return true;
    } catch (error) {
        console.error('Error setting sessionStorage item:', error);
        return false;
    }
}

/**
 * @description: 获取sessionStorage
 * @param {string} key 键
 * @param {*} prefix 前缀
 * @return {*} T | null
 */
export function getSessionItem<T>(key: string, prefix = ''): T | null {
    try {
        const item = sessionStorage.getItem(prefix + key);
        return item ? JSON.parse(item) : null;
    } catch (error) {
        console.error('Error getting sessionStorage item:', error);
        return null;
    }
}
